import static org.junit.Assert.*;


import java.util.*;

import org.junit.Test;
import org.junit.Before;

/*
 * Este test, pretende comprobar la eficacia del código del método ElegirRol de la 
 * clase PuertoRico, pero, por razones que no soy capaz de ver en este momento, el test no
 * funciona correctamente, por lo que queda pendiente de refinar en una siguiente revisión.
 */



public class ZZTestElegirRol01 {
	
	private Map<String,Roles> rol;
	private static Roles Alcal;
	private static Roles Buscador;
	private static Roles RolTest;
		
	@Before
	public void setUpBeforeClass() {
		
			Alcal= new Alcalde();
			Buscador= new BuscadorDeOro();
			rol.put("1", Alcal);
			rol.put("2", Buscador);
			
					
	}
	
	@Test
	public void tetsElegirRol01() {
		RolTest = elegirRol(rol);
		assertTrue (RolTest.nombre=="BuscadorDeOro");		
	}
	
	
	
	
	private Roles elegirRol(Map<String, Roles> rol){//Completa
		Set<Map.Entry<String, Roles>> roles = rol.entrySet();
		Iterator<Map.Entry<String, Roles>> rolesIt = roles.iterator();
		while (rolesIt.hasNext()){
			Map.Entry<String, Roles> entry = (Map.Entry<String, Roles>) rolesIt.next();
			System.out.println(entry.getKey()+" "+entry.getValue());
		}
		try{
			System.out.println("Selecciona rol: ");
			/*BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
			String key = br.readLine();*/
			String key = "2";
			return rol.remove(key);
			
		} catch(Exception e){
			
		}
		return null;
	}

}
